Pickup locations with modifiable storage compartment configurations and corresponding door operations

ABSTRACT

Storage compartment configurations of pickup locations may be modified (e.g., by dividing larger storage compartments into multiple smaller storage compartments, or vice versa) based on sizes of items to be delivered to the pickup locations, so as to allow more items to be stored with less unused space in each of the storage compartments. Partitions may be positioned (e.g., inserted, moved, removed, etc.) utilizing positioning elements (e.g., rollers, motors, actuators, robotic arms, etc.) for configuring the sizes of each of the storage compartments. Door operations for each of the storage compartments may be modified so as to correspond to the current sizes of the storage compartments, and in some instances multiple doors may be utilized for providing access to larger storage compartments while individual doors may be utilized for providing access to smaller storage compartments.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/658,107, filed Mar. 13, 2015, the contents of which are incorporatedby reference herein in their entirety.

BACKGROUND

Many companies package items and/or groups of items together for avariety of purposes, such as e-commerce and mail-order companies thatpackage items (e.g., books, CDs, apparel, food, etc.) to be shipped tofulfill orders from customers. Retailers, wholesalers, and other productdistributors (which may collectively be referred to as distributors)typically maintain an inventory of various items that may be ordered bycustomers. This inventory may be maintained and processed at a materialshandling facility which may include, but is not limited to, one or moreof: warehouses, distribution centers, cross-docking facilities, orderfulfillment facilities, packaging facilities, shipping facilities, orother facilities or combinations of facilities for performing one ormore functions of material (inventory) handling.

In some instances, a customer may order an item and designate a pickuplocation as the delivery location. A pickup location may include acontrol station and storage compartments where the items that areordered from a materials handling facility can be delivered for pickupby customers. Rather than shipping the item to a residence or place ofbusiness, the item may be shipped to the pickup location and stored in astorage compartment for retrieval by the customer. For various reasons(e.g., holiday shopping, popular locations, etc.) there may at varioustimes be a high demand for having items shipped to a pickup location. Asa result, the pickup location may reach a maximum capacity wherein thereare no more storage compartments available for receiving additionalitems.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is described with reference to the accompanyingfigures. In the figures, the left-most digit(s) of a reference numberidentifies the figure in which the reference number first appears. Theuse of the same reference numbers in different figures indicates similaror identical components or features.

FIG. 1 illustrates a broad view of the operation of a materials handlingfacility, according to some implementations.

FIG. 2 is a schematic diagram of a pickup location, according to someimplementations.

FIG. 3 is a schematic diagram of different example storage compartmentconfigurations in a pickup location, according to some implementations.

FIG. 4 is a block diagram of an illustrative distributed pickup locationenvironment, according to some implementations.

FIG. 5 is a flow diagram illustrating an example process for processinga user order for an item, according to some implementations.

FIG. 6 is a flow diagram illustrating an example process for determininga storage compartment configuration in a pickup location, according tosome implementations.

FIG. 7 is a flow diagram illustrating an example sub-process formodifying a storage compartment configuration, according to someimplementations.

FIG. 8 is a flow diagram illustrating an example process for deliveringan item to a pickup location, according to some implementations.

FIG. 9 is a flow diagram illustrating an example process for retrievingan item from a pickup location, according to some implementations.

FIG. 10 is a block diagram illustrating an example computer systemconfigured to implement one or more of the systems or processesdescribed herein, in various implementations.

While implementations are described herein by way of example, thoseskilled in the art will recognize that the implementations are notlimited to the examples or drawings described. It should be understoodthat the drawings and detailed description thereto are not intended tolimit implementations to the particular form disclosed but, on thecontrary, the intention is to cover all modifications, equivalents andalternatives falling within the spirit and scope as defined by theappended claims. The headings used herein are for organizationalpurposes only and are not meant to be used to limit the scope of thedescription or the claims. As used throughout this application, the word“may” is used in a permissive sense (i.e., meaning having the potentialto), rather than the mandatory sense (i.e., meaning must). Similarly,the words “include,” “including,” and “includes” mean “including, butnot limited to.”

DETAILED DESCRIPTION

This disclosure describes systems and methods for pickup locations withmodifiable storage compartment configurations. In variousimplementations, modifications may be performed based on evaluations ofsizes of items that are to be stored in the pickup location. Forexample, items that are scheduled for delivery to a pickup location maybe evaluated to determine a storage compartment configuration that willbest store the items with the highest storage density and a least amountof unused space in each storage compartment. In one implementation, anoptimal sorting algorithm may be utilized for determining the mostefficient storage compartment configuration for storing the items.

In various implementations, the storage compartment configurations maybe modified through a positioning of partitions. For example, partitionsmay be inserted in locations so as to divide larger storage compartmentsinto smaller storage compartments. As another example, partitions inexisting storage compartments may be moved to new locations so as tochange the sizes of the storage compartments that are separated by thepartitions. In various implementations, the partitions may be positionedthrough the utilization of partition positioning elements (e.g.,electronically controlled rollers, gears, motors, actuators, roboticarms, etc.). In various implementations, as part of the positioningprocess, partition guiding portions (e.g., slots, tracks, rails,grooves, pins, ledges, etc.) may be utilized for guiding and/or securingthe partitions as they are moved to their new locations.

Modified door operations may be determined which correspond to modifiedstorage compartment configurations. In various implementations, fixeddoors (e.g., on hinges) may be utilized wherein multiple doors may beopened to provide access to larger storage compartments, and individualdoors may be opened to provide access to smaller storage compartments.Larger doors may also be made to include multiple smaller doors, whereinthe smaller doors provide access to smaller storage compartments (e.g.,as created by the insertion of partitions). In various implementations,sliding doors may also or alternatively be utilized. For example, if amodification changes a size of a storage compartment, an amount ofopening provided between two sliding doors may be modified so as tomatch the new size of the storage compartment.

In various implementations, the timing for when modifications are madeto a storage compartment configuration may be based on various factors.For example, modifications may be scheduled to be performed when apickup location is least utilized (e.g., in the middle of the night orwhen a pickup location is closed). In various implementations,modifications may be performed more frequently when there is a higherdemand for the pickup location. For example, during a holiday shoppingseason, multiple modifications may be performed throughout a day inorder to best utilize the available storage capacity of the pickuplocation. In various implementations, the timing for modifications maybe based at least in part on the timing for deliveries and retrievals ofitems to and from the pickup location. For example, after an item isretrieved from a larger storage compartment, while the storagecompartment is empty a modification may be made for dividing the largerstorage compartment into smaller storage compartments, so that smalleritems associated with different user orders that are in transit to thepickup location may be stored in the smaller storage compartments. Invarious implementations, the timing for modifications may be based atleast in part on the timing for when data is received regarding itemsthat are to be delivered to the pickup location. For example, data maybe accumulated from an ordering system and provided a certain number oftimes per day (e.g., three times per day), in which case modificationsmay be made at or after the times when the data is received.

A block diagram of a materials handling facility, which, in oneimplementation, may be an order fulfillment facility configured toutilize various systems and methods described herein, is illustrated inFIG. 1. In this example, multiple users 100 may submit orders 120, whereeach order 120 specifies one or more items from inventory 130 to beshipped to the user or to another entity specified in the order. Anorder fulfillment facility typically includes a receiving operation 180for receiving shipments of stock from various vendors and storing thereceived stock in inventory 130. To fulfill the orders 120, the item(s)specified in each order may be retrieved or “picked” from inventory 130(which may also be referred to as stock storage) in the orderfulfillment facility, as indicated by picking operation 140. In someimplementations, the items of a user order may be divided into multipleshipment sets for fulfillment by a planning service before fulfillmentinstructions are generated (not shown). As used herein, the term“shipment set” may refer to a single item of a user's order, multipleitems of a user's order, or all items of a user's order.

In some instances, when a user has selected a pickup location, such asthe pickup location described below with respect to FIG. 2, as thedelivery destination, the item(s) of one or more shipment sets may bepicked at the picking operation 140 directly into delivery containers. A“delivery container,” as used herein, may be any form of container usedin transporting or handling items. For example, a delivery container maybe a tote, pallet, bin, trailer, etc. Additionally, the deliverycontainer may be segmented or otherwise include division points,permanent or movable, that enable separation of items within thedelivery container. In some instances, items themselves, such as largeritems (e.g., big screen televisions, desks, cabinets) may be consideredand treated as delivery containers. The delivery container may alsoinclude a unique identifier, such as a bar code, QR code, unique number,etc. to enable tracking and identification of the delivery container andassociation of items placed in the delivery container. For example,during a picking operation, an agent within the materials handlingfacility may scan the bar code of the delivery container and scan abarcode or identifier of the picked item as the item is placed into thedelivery container. Scanning of the delivery container and the pickeditem results in the item becoming associated with and tracked with thedelivery container. In some implementations, for delivery containersthat are segmented or otherwise include division points, those segmentsmay each include a unique identifier (e.g., bar code), and as items areplaced in the delivery container they may be associated with a specificlocation, or segment within the delivery container by scanning theidentifier of that segment. Likewise, because items may not be packed inshipping packages, the packing slip typically included in a shippingpackage may be applied to the item (e.g., stickered to the item),printed out at the pickup location upon retrieval of the item, orotherwise made available to a user.

Regardless of the type of delivery container utilized, in someimplementations, items for which a pickup location has been selected asthe final delivery destination do not need to be packed in a shippingpackage and can be transported to the pickup location in the deliverycontainer. In other instances, items that are pre-packaged or fragileitems that need additional protection prior to transport may be pickedand transported to a pickup location in a delivery container. In anotherimplementation, items may be put in bags prior to placement in thedelivery container and/or storage compartment to provide confidentialityof the ordered items. In addition, items from multiple shipment setsdestined for the same pickup location may be picked into the samedelivery container for transport. As delivery containers are filled, anitem routing operation 145 may route the filled delivery containers tothe appropriate transporting operation 155 for transport to thedesignated pickup location. The item routing operation 145 may be manualor automated. The item routing operation 145 may receive an indicationof the pickup location to which each item should be routed from ashipment planning system and route delivery containers to one or moretransporting operations 155, from which they may be transported to thepickup location.

In other examples, for items not scheduled for delivery to a pickuplocation, or for items scheduled for delivery to a pickup locationthrough other shipping methods, picked items may be delivered to one ormore stations in the order fulfillment facility for sorting 150 intotheir respective shipment sets and for packing 160 in shipping packages.A package routing operation 165 may sort orders for packing in shippingpackages to one or more shipping operations 170, from which they may beshipped to the users 100. The package routing operation 165 may invarious implementations be automated or manual. The package routingoperation 165 may receive an indication of the destination to which eachpacked shipment set should be routed from a central control system. Insome instances, the destination may be the final destination identifiedby the user or a pickup location at which transfer of a shipment set mayoccur for final delivery to the user. The package routing operation 165may also determine a routing destination for each packed shipment setdependent on the size of a shipping package in which the shipment set iscontained and/or based on whether the shipment set will be delivereddirectly to the user or be delivered to a pickup location at whichtransfer of the shipment set will occur for final delivery to the user.

The arrangement and order of operations illustrated by FIG. 1 is merelyone example of many possible implementations of the operation of amaterials handling facility, such as an order fulfillment facility, thatenables transport of items to pickup locations. Other types of materialshandling, manufacturing, or order fulfillment facilities may includedifferent, fewer, or additional operations and resources, according todifferent implementations.

As will be described in more detail below, the sizes of items that arescheduled for delivery to a pickup location may be utilized to determinewhether a modification will be made to a storage compartmentconfiguration at the pickup location. In various implementations, thesizes of the items that are utilized for such calculations may be basedon the sizes of the items without shipping packages. As noted above,items for which a pickup location has been designated as the finaldelivery destination may not need to be packed in a shipping package. Insuch instances, the items may arrive at the pickup location and beplaced in the designated storage compartments without requiring theitems to be de-boxed or otherwise removed from a shipping package. Inother instances, when an item is delivered to a pickup location in ashipping package, the item may be removed from the shipping packagemanually or automatically (e.g., utilizing robotic mechanisms, etc.)before the item is placed in the storage compartment of the pickuplocation. Alternatively, the size of the item that is utilized for thestorage compartment calculations may be based on the size of a shippingpackage, in which case the item may not need to be removed from theshipping package before the shipping package is placed in the storagecompartment of the pickup location. Various examples of storagecompartments for storing items at a pickup location will be described inmore detail below with respect to FIG. 2.

FIG. 2 depicts a schematic diagram of a pickup location 200, in oneimplementation. The pickup location 200 may include one or more controlstations 201 and one or more storage compartment modules 203, 205, 207,209. The control station 201 acts as the central control point for thepickup location 200, providing power, computing resources, user inputand network access to the pickup location 200. For example, controlstation 201 may include an internal computing system (not shown), suchas a computing system described below with respect to FIG. 10, or othercomputing system, that is capable of maintaining state information foreach storage compartment at the pickup location 200 and providing othercomputing functions. For example, the internal computing system mayinclude a command component that maintains information as to whichstorage compartments of the pickup location 200 are empty, which storagecompartments include items, the access code(s) or other identifier(s)necessary to open each of the storage compartments and any otherinformation necessary to maintain the pickup location. The commandcomponent may also issue commands or instructions to the storagecompartment modules to lock/unlock storage compartments, activatesensors, and the like. The pickup location 200 may be configured toobtain information from a remote computing resource, shipment planningsystem, capacity planning system, storage compartment control system, ormaterial handling facility or may be configured to operate primarily asa stand-alone unit, with limited external communication to providecapacity information and/or to receive/provide order/delivery/transferinformation. FIG. 4, described below, illustrates an example of anenvironment in which a centralized control system is provided forremotely communicating with a group of geographically distributed pickuplocations 200.

The control station 201 may also include a user interface 211. The userinterface 211 is configured to receive and provide information to one ormore users of the pickup location 200 and may include, but is notlimited to, a display 213, such as a touch-screen display, a scanner215, a keypad 217, a biometric scanner 219, an audio transducer 221, oneor more speakers 223, one or more image capture devices 225, such as avideo camera, and any other types of input or output devices that maysupport interaction between the pickup location 200 and one or moreusers. For example, the user interface 211 may also include a creditcard reader, the ability to accept money (such as cash or coins) and/orthe ability to vend items (e.g., stamps, labels, envelopes, shippingpackages) using a vending slot 226. Providing the ability for the pickuplocation 200 to accept credit cards and/or money enables the delivery oforders to a storage compartment at the pickup location 200 for which theitems are paid for at the time of pickup (e.g. cash on delivery).Likewise enabling vending of items, such as stamps or envelopes,supports the ability for users to utilize a pickup location to ship ordeliver goods, as described in more detail below.

In addition to including user input and output devices, the userinterface 211 may also include the ability to collect particulates, suchas for use in detection of hazardous (e.g., explosives) or bannedsubstances (e.g. drugs). In one implementation, the user interface 211may include a particulate sensor that includes a forced air ejectioncomponent 227 and an air intake component 229. The air ejectioncomponent expels air from a left side of the display 213 while a user isinteracting with or otherwise within a predetermined range of thedisplay 213. Opposite the air ejection component 227, the air intakecomponent 229 collects the ejected air and any particulates that arecollected as the air passes over the display 213 and past the user'shand or fingers as they interact with the display 213. Collectedparticulates may be scanned or otherwise processed to determine ifpotentially hazardous or banned substances may be placed in a storagecompartment using any known particulate testing technique. Ifparticulates indicating the potential presence of hazardous or bannedsubstances are detected, the control station 201 may determine to notopen a storage compartment door, may alert the authorities, or takeother protective actions (such as shutting down the pickup location orperforming additional tests). For example, if the air intake component229 detects gasoline vapor particulates in a pickup location, thecontrol station 201 may contact the appropriate authorities (e.g.,police, fire, etc.)

The control station 201 may also include a connector componentconfigured to provide wired and/or wireless network connectivity withthe other storage compartment modules 203, 205, 207, 209, as well as toremote computing devices (FIG. 4) or materials handling facilities.Wireless connectivity may be implemented using a wireless antenna 231,which may provide both receive and transmit functionality. Power and/ornetwork communication with remote computing devices may be obtained froma main access point 232. In addition, in some implementations, thecontrol station 201 may include one or more storage compartments 233,235, 237, 239. As described in more detail below with respect to thestorage compartment modules 203, 205, 207, 209, the storage compartments233, 235, 237, 239 of the control station 201 may be of any size orconfiguration, and the storage compartment configuration may bemodifiable (e.g., through the insertion or removal of partitions, etc.).As with each of the other storage compartments, the storage compartments233, 235, 237, 239 of the control station 201 may include an automatedlocking mechanism, image capture device, a motion or presence detectionmechanism, temperature sensor, etc. Alternatively, in someimplementations one or more of the storage compartments may be utilizedas an additional user interface. For example, storage compartment 239may be removed and the space remaining may be utilized to provide ascale or other type of weight determination component to allow users toweigh items for shipment, determine the cost necessary to ship the item,and pay for shipping using the user interface 211.

The control station 201 may include one or more connector components202(A), 202(B), 202(C), 202(D) to which a storage compartment module,such as storage compartment module 205 or storage compartment module 207may connect with the control station 201. For example, connectorcomponent 202(A) may provide power to storage compartment module 205,connector component 202(B) may provide communication with storagecompartment module 205, connector component 202(C) may provide power tostorage compartment module 207 and connector component 202(D) mayprovide communication with storage compartment module 207. Likewise, thestorage compartment modules may also include one or more connectorcomponents, such as connector components 204(A), 204(B) to provide powerand connectivity to additional storage compartment modules, such asstorage compartment module 203.

Each storage compartment module, such as storage compartment modules203, 205, 207, 209, may be configured so the pickup location 200 ismodular, such that one or more storage compartment modules can be easilyremoved or added to the control station 201 of the pickup location 200.The ability to add or remove storage compartment modules at a pickuplocation 200 supports the ability to easily and quickly expand or removecapacity so that the demand for that pickup location can be satisfied.For example, during a holiday shopping season, additional storagecompartment modules may need to be added to the pickup location 200 tosupport the increased demand of items ordered by users. As storagecompartment modules 203, 205, 207, 209 are added or removed from apickup location 200, the control station 201 may inform a warehousemanagement system and/or a capacity planning system of the added orremoved capacity.

Each storage compartment module 203, 205, 207, 209 includes one or morestorage compartments, one or more receptor components for connectingwith connector components of a control station 201 (or another storagecompartment module) and one or more connector components for allowingother storage compartment modules to connect thereto, thereby providingpower and/or connectivity with the control station 201. The storagecompartments of each storage compartment module may be of varying sizesand number. As such, storage compartment modules with different storagecompartment sizes can be added to a pickup location 200 to optimize thestorage compartment configuration to match that of the sizes of itemstypically scheduled for delivery to the pickup location. In addition,for certain storage compartment modules, the storage compartmentconfiguration may be modifiable such that the storage compartment sizesmay be made to better correspond to the sizes of items currentlyscheduled for delivery to the pickup location.

In addition to including storage compartments, power and connectivitypoints, the storage compartment modules 203, 205, 207, 209 may alsoinclude one or more wireless antennas 241, 243, 245, 247 and one or morecomputing systems, such as the computing system described with respectto FIG. 10, or a simpler computing system such as a printed circuitboard, RFID tag, or anything else that may be detectable by the controlstation 201 and used to identify the storage compartment module. Thecomputing component(s) of each storage compartment module may include aunique identifier of the storage compartment module and configurationinformation of the storage compartment module, which includes dimensioninformation and location information of each storage compartment of thestorage compartment module. The computing component may also include astorage compartment management component configured to control theactuators that enable locking and unlocking of the storage compartmentdoors of the storage compartment module 203, 205, 207, 209 in responseto receiving commands or instructions from a command component of thecontrol station 201.

A storage compartment module, such as storage compartment module 207,when added to a control station 201 and power is applied, providesinformation to the control station 201 identifying the storagecompartment module 207, the number, location, and dimensions of eachstorage compartment of the storage compartment module and any otherconfiguration or information necessary to enable the control station 201to control the storage compartment module 207. As illustrated by thecomparison between storage compartment module 207 and storagecompartment module 209, each storage compartment module may have avariety of different storage compartment configurations, which mayinclude different sizes and numbers of storage compartments. Forexample, storage compartment module 207 includes a group of smallstorage compartments, such as small storage compartments 249, 251, agroup of larger storage compartments, such as storage compartments 253,255, and a group of still-larger storage compartments, such as storagecompartments 257, 259. In contrast, storage compartment module 209 isillustrated as including even larger storage compartments 261, 263, 265,267AD, although as will be described in more detail below with respectto FIG. 3, the storage compartment configuration of the storagecompartment module 209 may be modified through the placement ofpartitions to divide the storage compartment 267AD into smaller storagecompartments. It will be appreciated that any number and size of storagecompartments in a storage compartment configuration of a storagecompartment module may be utilized with the various implementationsdescribed herein.

In an alternative implementation, rather than providing all of theinformation from the storage compartment module 207 to the controlstation 201, the storage compartment module 207 may only provide limitedinformation, such an identifier, to the control station 201. The controlstation 201, upon receiving the limited information from an addedstorage compartment module 207, may make a request to a remote computingsystem, such as a storage compartment management system, and obtaininformation about the number and sizes of the storage compartments ofthe storage compartment configuration of the added storage compartmentmodule 207.

The control station 201, upon receiving identifying information of anadded storage compartment module 207, may allocate the added capacity tothe pickup location 200, and may inform a remote computing resource suchas will be described in more detail below with respect to FIG. 4. Invarious implementations, the added storage compartment module may act asa slave component for the control station, receiving instructions (e.g.,open storage compartment, close storage compartment, positionpartitions, activate image capture device, monitor motion sensor) fromthe command component of the control station 201 and providing responses(e.g., closed-door, open-door, partitions positioned, object/movementdetected) to the control station 201 via the storage compartmentmanagement component.

Each storage compartment of a storage compartment module 203, 205, 207,209 or control station 201 includes an upper, bottom, side and rearsurfaces and at least one door configured to form a cavity in whichitems may be stored. As will be described in more detail below, invarious implementations partitions that are utilized to separate storagecompartments may be inserted, removed, moved, etc. and may be utilizedto form any of the upper, bottom, side or rear surfaces of the givenstorage compartments. In addition, each storage compartment may includevarious security or other components. For example, looking at theexpanded view of storage compartment 257, disposed within the cavity thestorage compartment may include a locking mechanism 269, which may becontrolled remotely by the command component of the control station 201via the storage compartment management component, a presence detectionsensor 271, motion sensor 272, an image capture device 273, atemperature sensor 274, and a mirror (or other reflective surface) onthe top inside of the storage compartment unit (not shown).

The locking mechanism 269 may be controlled by the control station 201,either through wired or wireless communication with the storagecompartment management component, to effect locking and unlocking of thedoor 275 of the storage compartment 257. For example, when a userinteracts with the control station 201 via the display 213 and providesan access code or other identifier, the control station 201 may identifya specific storage compartment associated with the access code or otheridentifier and the command component may wirelessly send instructions tothe storage compartment management component of the storage compartmentmodule 207 to unlock a storage compartment 257. The instructions mayinclude a command (e.g., unlock), an address or identifier of thespecific storage compartment and any other information necessary forcommunication between the control station 201 and the storagecompartment module 207. In response to receiving the instructions fromthe command component, the storage compartment management component ofthe storage compartment module 207 may activate a locking mechanism thatmoves the pins of the locking mechanism 269 on the door 275 of theidentified storage compartment 257 such that the pins retract, therebydisengaging the lock of the storage compartment 257 allowing the door275 to open. In some implementations, the storage compartment 257 mayalso include a spring mechanism (not shown) such that when the lockingmechanism 269 of the storage compartment 257 is disengaged, the springmechanism propels the door 275 outward, thereby identifying to a userthat the door 275 is unlocked and the storage compartment 257 isaccessible.

While the locking mechanism described above utilizes retractable pins,any mechanical, magnetic, electrical or other form of locking mechanismmay be utilized with the various implementations described herein. Inaddition, the storage compartment 257 may also include magnets to helpretrieve and close a door when it is not all the way closed. Also, thelocking mechanism of different storage compartments and differentstorage compartment modules may be the same or different. Moreover,while the above example describes sending instructions from the commandcomponent of the control station 201 to the storage compartmentmanagement component of the storage compartment module, in otherimplementations, each storage compartment may be controlled and/orcommunicated with directly by the control station 201 and/or the commandcomponent and/or remote computing resources as will be described in moredetail below with respect to FIG. 4.

The presence detection sensor 271 may be used to detect the presence orabsence of objects in the storage compartment 257. For example, thepresence detection sensor 271 may be utilized when a carrier or user isplacing items, delivery containers and/or transfer containers in thestorage compartment 257 to confirm that the item is indeed in thestorage compartment 257 before the door 275 is closed and locked by thelocking mechanism 269. Additionally, the presence detection sensor 271and/or motion sensor 272 may also be used when a user is picking up anorder stored in the storage compartment 257 or when a carrier isremoving items, delivery containers and/or transfer containers from thestorage compartment 257. For example, when a user interacts with thecontrol station 201 via the touch control display 213 and provides anaccess code such that a storage compartment 257 is opened, the presencedetection sensor 271 and/or motion sensor 272 may be used to confirmthat a user has reached into the storage compartment 257 and removed itscontents (or added items in the case of returns or shipping), prior toallowing the storage compartment door 275 to be closed and locked withthe locking mechanism 269. In some implementations, there may bemultiple presence detection sensors 271 and/or motion sensors 272distributed throughout the inside of a storage compartment to ensureobjects/motion is detected. In still another implementation, the bottomof the storage compartment may include protrusions or rises to positionthin items so they are detected by the presence detection sensor 271.

The storage compartments, such as storage compartment 257, may alsoinclude an image capture device 273, such as a camera, and optionally anillumination component (not shown), such as a light emitting diode(LED), that may be used to illuminate the inside of the storagecompartment 257. The image capture device 273 may also be used to thedetect presence or absence of items within the storage compartment 257,detect the item itself, for example to simplify returns, as well as forsecurity. For example, the image capture device 273 may be used toidentify the type of object located within the storage compartment 257and/or to identify or record video/images of access with the storagecompartment 257. In addition, the image capture device 273 may be usedto determine the amount of space available in the storage compartment257. For example, an image taken by the image capture device 273 may betransmitted via wired or wireless communication to the control station201 and the control station 201 may determine the amount of spaceavailable in the storage compartment 257. Such information may be usedto determine if all items of a shipment set will fit in a single storagecompartment 257, if all items associated with a storage compartment arepresent in the storage compartment, if the shipment set needs to bedivided across multiple storage compartments, or if the storagecompartment configuration needs to be modified to provide more or lessroom in a storage compartment for the shipment set. In addition, as willbe described in more detail below, an image capture device (e.g.,similar to image capture device 273) may also be used to determine ifthere is sufficient space in a storage compartment 267AD to contain anitem 277AD.

Some storage compartments, such as storage compartments locatedvertically higher within a storage compartment module 203, 205, 207, 209or the control station 201, such as storage compartments 233, 235, 253,255 may also include a reflective surface, such as a mirror, on theinside top, sides and/or back of the storage compartment to enable auser who cannot see directly into the storage compartment to determinevia a reflection off the reflective surface whether they have removedall of the items from the storage compartment. In a similar manner, areflective surface may be included on the bottom, sides or back of astorage compartment, such as storage compartment 239, located lowerwithin a storage compartment module 203, 205, 207, 209 or the controlstation 201, so users can determine via a reflection, and without havingto bend all the way down to see into the storage compartment, whetherall items have been removed.

The image capture device 273 may also be used to determine if all of theitems have been removed from the storage compartment 257. For example, acurrent image taken by the image capture device 273 may be compared to aprior image taken when the storage compartment 257 was empty in order toverify that all of the items have been removed from the storagecompartment. In one implementation, the current image taken by the imagecapture device 273 may be transmitted via wired or wirelesscommunication to the control station 201 and the control station 201 maycompare the current image to a stored image of the empty storagecompartment 257 using image processing software to determine if all ofthe items have been removed. For example, when a user closes the door ofthe storage compartment 257 after removing some items, the controlstation 201 may use the current image from the image capture device 273to automatically detect and provide a warning to the user if there areitems remaining in the storage compartment 257.

Various partitions may be utilized to form some or all of the surfacesof a storage compartment. With respect to the storage compartment 257,the upper surface is shown to be formed from a partition 295CD, thelower surface is shown to be formed from a partition 295DE and a sidesurface is shown to be formed from a partition 295SD. In variousimplementations, such partitions may be positioned (e.g., removed,inserted, moved, etc.) so as to modify a storage compartmentconfiguration. For example, the storage compartment 257 may have beenformed by inserting one or more of the partitions 295CD, 295DE and 295SDto divide an initially larger storage compartment into smaller storagecompartments including the storage compartment 257. As will be describedin more detail below with respect to FIG. 3, such partitions may bestored and/or positioned utilizing partition positioning elements thatare included in a modification components area 290 (e.g., located on theback side of the storage compartment modules 203, 205, 207, 209 and thecontrol station 201).

Some storage compartments, such as any of the storage compartmentslocated within a storage compartment module 203, 205, 207, 209 or thecontrol station 201, may be refrigerated storage compartments. Invarious implementations, such refrigerated storage compartments mayinclude their own cooling mechanisms, or may rely on those ofneighboring refrigerated storage compartments to which they areenvironmentally coupled, or alternatively each of the modules 201, 203,205, 207, 209 or the entire pickup location 200 may have a centralizedcooling system. The temperature of previously non-refrigerated storagecompartments may be adjusted to become refrigerated storagecompartments, and vice versa. The temperature in each of therefrigerated storage compartments may be separately adjustable, suchthat items inside each of the refrigerated storage compartments may becooled to a desired temperature. For example, items that need to bechilled or frozen at specified temperatures, such as groceries ormedical supplies, may be stored in various refrigerated storagecompartments.

In various implementations, the temperatures in the refrigerated storagecompartments may be adjusted when items are delivered to be placed inthe refrigerated storage compartments, or may be adjusted in advance.For example, when a refrigerated item is scheduled to be delivered to apickup location, the temperature of a refrigerated storage compartmentmay be adjusted to a temperature that is specified for the refrigerateditem in advance so that the refrigerated storage compartment will be atthe specified temperature when the item is delivered. In oneimplementation, the image capture device 273 may be used to capture animage of an item when it is delivered and/or placed in a storagecompartment in order to try to determine an appropriate storagetemperature for the item. For example, an item may have information on alabel which identifies a storage temperature, such as “contents to bestored at 32 degrees F. or lower”.

The temperatures in some or all of the refrigerated storage compartmentsmay be controlled by the control station 201. Continuous monitoring andregulating of the temperatures of the refrigerated storage compartmentsin which such items are kept may be important for verifying thecondition of the items. Temperature sensors, such as the temperaturesensor 274 of the storage compartment 257, may be utilized formonitoring and regulating the temperature inside each of therefrigerated storage compartments. The refrigerated storage compartmentsand/or the entire pickup location 200 may be insulated to prevent thedissipation of the cooled air from the refrigerated storagecompartments.

In various implementations, one or more of the refrigerated storagecompartments may be insulated storage compartments which are cooled bypassive cooling elements that are placed within the storagecompartments. For example, rather than utilizing an active coolingsystem which may have components such as compressors and coils, some ofthe storage compartments may be cooled by passive cooling elements suchas cold packs, frozen water bottles, etc. In one implementation, thepassive cooling elements may be included in a shipping package with anitem when it is shipped to the pickup location. In an alternativeimplementation, the passive cooling elements may already be at thepickup location and may be added to the insulated storage compartmentwith the item when it arrives. The number of passive cooling elements tobe included with an item may be calculated based on a number of factors.For example, one factor may be an estimated maximum period of time thatthe item may remain in the storage compartment before it is retrieved bya user. Another factor may be the expected ambient temperature at thepickup location and/or during shipping to the pickup location. Otherfactors may include the size of the storage compartment, the size andnumber of items to be included in the storage compartment, etc. Variousgovernment regulations may also specify temperatures at which certainitems are to be maintained. For example, various federal, state and/ormunicipal regulations may dictate requirements for storage temperaturesfor items as well as maximum periods of time that items may be stored ata given temperature. All of these factors may be included in acalculation of how many passive cooling elements should be included inan insulated storage compartment with an item, as well as adetermination of a maximum period of time that the item may remain inthe storage compartment.

In another example, the pickup location 200 may also include a storagecompartment module configured as a drop-box (not shown). Rather thanutilizing specific storage compartments of the pickup location 200 tostore returned items and/or items for delivery, a storage compartmentmodule configured as a drop-box may be utilized to securely store suchitems. For example, a drop-box may be configured with a pivoting door ortray that allows items to be placed in the drop-box but not retrievedwithout having additional access to the drop-box. In some examples, thepivoting door or other form of access may also be locked and access onlyprovided in response to a user interacting with the user interface 211,such as selecting to return an item.

The storage compartment modules 203, 205, 207, 209 as well as thecontrol station 201 may also include self-leveling feet 279 that may beused to level the storage compartment modules 203, 205, 207, 209 and/orcontrol station 201 when located on uneven surfaces. In addition, theself-leveling feet 279 may also be adjusted so that a storagecompartment module, such as storage compartment module 205, 207, can bepositioned so it is flush and aligned with a control station 201 oranother storage compartment module. As an alternative to self-levelingfeet 279, any other type of support mechanism may be utilized withvarious implementations described herein for supporting the controlstation 201 or any storage compartment module 203, 205, 207, 209. Also,the control station 201 and one or more of the storage compartmentmodules 203, 205, 207, 209 may utilize different types of supportmechanisms. For example, the control station 201 may utilizeself-leveling feet while the storage compartment modules 203, 205, 207,209 may utilize rolling casters or wheels. The casters/wheels mayfurther enable the ease with which storage compartment modules may beadded or removed from a control station 201, thereby allowing the easyaddition/removal of capacity at the pickup location 200.

FIG. 3 depicts a schematic diagram of example storage compartmentconfigurations 300A-300C of the storage compartment module 209 of thepickup location 200. As shown in FIG. 3, in the first storagecompartment configuration 300A, the storage compartment 267AD includes alarge item 277AD, and is accessed through an opening of four doors287A-287D. In various implementations, the doors 287A-287D may be madeto operate as a single door for the storage compartment 267AD. Forexample, a connecting mechanism may be utilized to connect the doors287A-287D together so that they move as a single door, the doors may allbe included within a single larger door with separate hinges, oralternatively the doors 287A-287D may function independently but may beall operated so as to open at the same time for providing access to thestorage compartment 267AD.

As an example of a larger door which includes smaller doors, a door 285is shown to cover the entire front of the storage compartment module 209and includes the smaller doors for each of the storage compartments 261,263, 265 and 267AD. Each of the smaller doors are separately hinged andprovide access to the respective storage compartments 261, 263, 265 and267AD through respectively sized openings in the door 285. The door 285is shown to be attached to the storage compartment module 209 by hinges283, and when the door 285 is opened it provides access to the entireinterior storage area of the storage compartment module 209. As will bedescribed in more detail below, in various implementations partitionsmay be inserted and/or removed, wherein if all of the vertical andhorizontal partitions between each of the storage compartments 261, 263,265 and 267AD are removed, a storage compartment may be created thatconsists of the entire storage area of the storage compartment module209. In various implementations, smaller versions of this principle andmultiple layers of such doors may be provided. For example, in analternative implementation, the door for the storage compartment 265 maybe made as a smaller version of the door 285, including four smallerdoors (not shown) which may provide access to four smaller storagecompartments that may be formed by utilizing horizontal and/or verticalpartitions to divide the storage compartment 265.

The storage compartment configuration 300B may be produced by modifyingthe storage compartment configuration 300A through a positioning (e.g.,inserting, moving, etc.) of a set of partitions 297BC and 297CD to theillustrated locations so as to divide the larger storage compartment267AD into smaller storage compartments 267AB, 267C and 267D. Thestorage compartment configuration 300B thus includes more storagecompartments than the storage compartment configuration 300A. Thestorage compartment 267AB is approximately one-half of the size of theformer storage compartment 267AD and is accessed by operating the doors287A and 287B simultaneously. The storage compartments 267C and 267D areapproximately one-quarter of the size of the former storage compartment267AD, and are accessed by independently operating each of the doors287C and 287D, respectively. An item 277AB, which is approximatelyone-half of the size of the item 277AD, is shown to be stored in thestorage compartment 267AB. The storage compartments 267C and 267D mayalso receive one or more smaller items (not shown).

In various implementations, the modification from the storagecompartment configuration 300A to the storage compartment configuration300B may be planned based on a scheduled retrieval of the item 277AD anda scheduled delivery of the item 277AB and one or more smaller items.The positioning of the partitions 297BC and 297CD at the illustratedlocations for forming the storage compartments 267AB, 267C and 267D ofthe respective sizes may be based on the sizes of the item 277AB and theone or more smaller items. As a result, the storage compartmentconfiguration 300B may be determined to achieve a higher storage densitythan the storage compartment configuration 300A. More specifically, thestorage of the item 277AB and the one or more smaller items in therespective storage compartments 267AB, 267C and 267D achieves a higherstorage density than if the storage compartment 267AD was utilized tostore only the item 277AB, and the one or more smaller items were notable to be stored due to a lack of additional storage compartments, orwere stored in other additional storage compartments. Storage densityfor these purposes may in one example be defined as a ratio of an amountof used space (i.e., as occupied by items) to a total amount of space ineach of the storage compartments in the storage compartment module.After the modification has been performed, the item 277AB and the one ormore smaller items may each be associated with the respective storagecompartments 267AB, 267C and 267D so that each of the items will bestored in the respective storage compartments when each of the items isdelivered to the pickup location.

The storage compartment configuration 300C may be produced by modifyingthe storage compartment configuration 300B through a positioning (e.g.,inserting, moving, etc.) of a partition 297AB to the illustratedlocation so as to divide the storage compartment 267AB into smallerstorage compartments 267A and 267B. The storage compartmentconfiguration 300C thus includes more storage compartments than thestorage compartment configuration 300B. The storage compartments267A-267D are approximately one-quarter the size of the former storagecompartment 267AD, and are each accessed by independently operating thecorresponding doors 287A-287D. The storage compartment 267A is shown toinclude a smaller item 277A, which is approximately one-half of the sizeof the item 277AB. The storage compartments 267B, 267C and 267D may alsoreceive one or more smaller items (not shown). The one or more smalleritems in the storage compartments 267C and 267D may be the same one ormore smaller items that were previously stored in the storagecompartment configuration 300B and which have not yet been retrieved.

In various implementations, the modification from the storagecompartment configuration 300B to the storage compartment configuration300C may be planned based on a scheduled retrieval of the item 277AB anda scheduled delivery of the item 277A and one or more smaller items. Thepositioning of the partition 297AB at the illustrated location forforming the storage compartments 267A and 267B of the respective sizesmay be based on the sizes of the item 277A and the one or more smalleritems. As a result, the storage compartment configuration 300C may bedetermined to achieve a higher storage density than the storagecompartment configuration 300B. More specifically, the storage of theitem 277A and the one or more smaller items in the respective storagecompartments 267A and 267B achieves a higher storage density than if thestorage compartment 267AB was utilized to store only the item 277A, andthe additional storage compartment 267B was not available for storingthe one or more smaller items as part of a separate user order. Afterthe modification has been performed, the item 277A and the one or moresmaller items may each be associated with the respective storagecompartments 267A and 267B so that each of the items will be stored inthe respective storage compartments when each of the items is deliveredto the pickup location. It will be appreciated that the above describedmodification processes may also be performed in reverse when largeritems are scheduled for delivery. For example, if the item 277AD isscheduled by itself for delivery with no smaller items, either thestorage compartment configuration 300B or 300C may be modified byremoving the respective partitions 297AB, 297BC and 297CD to produce thestorage compartment configuration 300A.

In various implementations, data regarding the sizes of items to bedelivered to a pickup location may be evaluated to determine possiblealternative storage compartment configurations for storing the items. Aspart of the evaluation of the data, one of the alternative storagecompartment configurations may be determined and/or selected for storingat least some of the items based on a sorting algorithm and/or aresulting storage density. For example, if the item 277AB was the onlyitem that was scheduled for delivery, it may be determined that eitherof the storage compartment configurations 300A or 300B could be analternative for storing the item, but that the storage compartmentconfiguration 300C would not be an option due to not having a largeenough storage compartment (i.e., assuming the storage compartments 261,263 and 265 were full). In this scenario, the storage compartmentconfiguration 300B may be selected due to achieving a higher storagedensity for the storing of item 277AB (i.e., the ratio of used space tototal space in the storage compartment 267AB would be higher than thatfor storage compartment 267AD, with the storage density calculationpotentially applying an equal or other weighting to each storagecompartment). In various implementations, the storage densitycalculation may also utilize different weightings for different types offactors. For example, it may be determined to be preferable to utilize apickup location to store multiple smaller items that are associated withmultiple user orders rather than a single large item that is associatedwith a single user order. In such an implementation, an ability of astorage compartment configuration to store more incoming items that areassociated with more user orders may be given a higher weight thananother storage compartment configuration that is able to store onelarge ordered item, even if the resulting storage densities wereapproximately the same between the two storage compartmentconfigurations.

As another example, if the items scheduled for delivery included theitem 277AB and two smaller items, a sorting algorithm may be utilized todetermine the different possibilities for storing the items in thestorage compartment configurations 300A-300C. In this scenario, thesorting algorithm may determine that the storage compartmentconfiguration 300A may store the item 277AB in the storage compartment267AD, the storage compartment configuration 300C may store the twosmaller items in the storage compartments 267A and 267B, and the storagecompartment configuration 300B may store the item 277AB in the storagecompartment 267AB and the smaller items in the storage compartments 267Cand 267D. Based on these determinations, the storage compartmentconfiguration 300B may be selected as the optimal choice, given theability to store the most incoming items. As noted above, when multiplestorage compartment configurations are able to store all of the itemsthat are scheduled for delivery to a pickup location, a selection mayalso or alternatively be based on a highest achieved storage density(e.g., which may allow additional storage compartments to remain emptyto allow future items to be received).

In various implementations, the control station 201 and/or storagecompartment management component may be utilized for controlling themodifications to the storage compartment configurations through thepositioning (e.g., inserting, moving, removing, etc.) of the partitions297AB, 297BC and 297CD. For example, as illustrated in the storagecompartment configuration 300C, partition positioning elements 293AB,293BC and 293CD (rollers, gears, motors, actuators, etc.) may beprovided in a modification components area 290 at the back of thestorage compartment module 209. In various implementations, themodification components area 290 may alternatively or in addition belocated on a side, top or bottom, or in an interior area, of the storagecompartment modules. In various implementations, the partitionpositioning elements 293AB, 293BC and 293CD may be electronicallycontrolled by the control station 201 and/or storage compartmentmanagement component for moving the partitions into or out of theillustrated locations. As another example, a partition positioningelement may include a robotic arm (not shown) that may be located on thestorage compartment module 209 (e.g., in the modification componentsarea 290) and which may be utilized for positioning the partitions intoor out of the illustrated locations.

As also illustrated in the storage compartment configuration 300C,partition guiding portions 291AB, 291BC and 291CD (e.g., slots, tracks,rails, grooves, pins, ledges, etc.) may be utilized for assisting withthe guiding and/or securing of the partitions as they are moved into orout of the illustrated locations. In various implementations, once thepartitions are positioned, they may be locked into the respectivelocations by the partition guiding portions 291, the partitionpositioning elements 293 and/or through the use of other components. Inaddition or as an alternative to the illustrated horizontal partitions297AB, 297BC and 297CD being moved horizontally, the horizontalpartitions may be raised or lowered vertically to the illustratedlocations (e.g., from the bottom or top of the storage compartmentmodule 209) for forming the storage compartments 267A-267D, or may beraised or lowered vertically to different locations so as to formdifferent sized storage compartments than those illustrated.

In various implementations, the vertical movement of horizontalpartitions may be achieved through the use of various types of partitionpositioning elements and/or guiding portions. For example, the partitionpositioning elements may include vertical linear actuators (e.g.,located in the back, sides, etc. of the storage compartment module) thatmove the horizontal partitions vertically (e.g., utilizing designatedvertical guiding portions such as rails, tracks, etc.). In suchconfigurations, different types of horizontal partitions may be utilized(e.g., a partition consisting of a horizontal flat plate that isattached to an actuator on the back or sides). In variousimplementations, vertical partitions may also or alternatively be movedhorizontally by utilizing similar components. For example, for thehorizontal movement of vertical partitions, the partition positioningelements may include horizontal linear actuators (e.g., located in theback, top/bottom, etc. of the storage compartment module) that move thevertical partitions horizontally (e.g., utilizing designated horizontalguiding portions such as rails, tracks, etc.). In such configurations,different types of vertical partitions may be utilized (e.g., apartition consisting of a vertical flat plate that is attached to anactuator on the back or top/bottom).

In various implementations, the modification components area 290 and/orother areas within the storage compartment module 209 may also include astorage area for storing the partitions 297AB, 297BC and 297CD when notin use. For example, the partitions may be made of a flexible materialand/or structure, which can be stored vertically, horizontally or in anotherwise compact configuration, before bending and/or being rolled ormoved out horizontally or vertically from the modification componentsarea 290 or other storage area by one or more respective partitionpositioning elements 293 and as guided and secured by the partitionguiding portions 291. In various implementations, the partitions mayinclude hinged or otherwise flexible portions (e.g., similar to thosecommonly utilized in garage doors and other structures), wherein thepartitions may be moved or rolled from one orientation to another inbetween storage locations and respective locations in the storagecompartments. For example, in such configurations the partitions may bestored in one orientation (e.g., vertical or horizontal), and may bemoved or rolled (e.g., as guided by partition guiding portions) to bepositioned in a different orientation (e.g., horizontal or vertical) inrespective locations within the storage compartments. In variousimplementations, the partitions may also or alternatively includefoldable/unfoldable and/or compressable/stretchable portions (e.g.,similar to those commonly utilized in accordion blinds and otherstructures). For example, in such configurations the partitions may befolded and/or compressed when they are to be stored and may be unfoldedand/or stretched to be moved into respective locations within thestorage compartments. In an alternative implementation, the modificationcomponents area 290 may be made large enough to store relatively rigidpartitions (e.g., flat plates) in a horizontal or vertical orientation(e.g., with the modification components area 290 thus havingapproximately the same depth as the storage compartments) for which thepartitions may be rolled or moved backward and forward by the respectivepartition positioning elements 293 to be moved between the modificationcomponents area 290 and the storage compartments.

In various implementations, once a modification has been made to astorage compartment configuration, door operations that correspond tothe modified positions of the partitions may be determined and stored ina memory (e.g., of the control station 201) so that the correct doorswill be opened for providing access to the storage compartments. Forexample, if multiple doors are associated with a storage component,(e.g. storage compartment 267AD with doors 287A-287D or storagecompartment 267AB with doors 287A and 287B), the multiple doors may beunlocked and/or opened simultaneously for providing access to thestorage compartment. As another example, if larger doors are made toinclude smaller doors (e.g., such as the door 285), the respectivedoor(s) that correspond in a particular configuration to a respectivestorage compartment may be opened to provide access to the respectivestorage compartment. In various implementations, larger and/or smallerdoors may also be provided on an opposite side (e.g. on the back) of thepickup location. For example, another set of doors (not shown) may beprovided on the back side of the storage compartment module 209, whichmay correspond to different sizes of storage compartments (e.g. smalleror larger storage compartments than those illustrated on the front sideof the storage compartment module 209). In such an implementation, auser may be instructed to go to the doors on either the front side orthe back side of the storage compartment module 209, depending on thesize of the storage compartment that the user is to access.

It will be appreciated that in other implementations, different numbersor types of doors may be utilized for providing access to the storagecompartments. For example, sliding doors (e.g., as driven by one or moremotors or actuators) may be utilized for providing access to storagecompartments of variable sizes. For example, if the storage compartment267A was reduced to approximately one-half of its illustrated size(e.g., by moving the partition 297AB to a position half-way up), a pairof sliding doors that slide up and down (e.g., and which may be flexiblefor retracting into top and bottom portions of the storage compartmentmodule 209) may be utilized for providing access to such variable sizedstorage compartments.

In various implementations, the doors may also be attached and/oroperated in other manners. For example, with respect to the storagecompartment configuration 300A, the door for the storage compartment 265may be hinged on the opposite side (e.g. at the outside edge of thestorage compartment module 209), so as to open in the opposite directionas the doors 287A-287D. In an implementation where a center dividerand/or partition is removable, storage areas of the storage compartments265 and 267AD may be combined so as to form a larger storage compartmentconsisting of the lower half of the storage compartment module 209. Thisexample illustrates a utility of doors with hinges on opposite sides forproviding access to larger storage compartments when a verticalpartition is removed.

In various implementations, the storage compartment module 209 may alsobe expandable. For example, as illustrated in the storage compartmentconfiguration 300C, the storage compartment module 209 includes an outerstorage compartment wall 209W1 which is part of a configuration (e.g.,including sliding panels, etc.) which may be expanded out so as toincrease the overall width and corresponding volume occupied by thestorage compartment module 209. In various implementations, suchexpansion may be utilized to increase the size of at least some of thestorage compartments and/or may be utilized to increase the number ofstorage compartments. For example, the number of storage compartmentsmay be increased if the movement of the outer storage compartment wallis done in conjunction with a positioning of one or more partitions andcorresponding doors for creating additional storage compartments in theadded space created by the movement of the wall.

FIG. 4 depicts a block diagram of an illustrative distributed pickuplocation environment 401 that includes a group of distributed pickuplocations 200(A), 200(B), 200(C), 200(D), 200(E), in one implementation.A group of corresponding geographic ranges 400(A), 400(B), 400(C),400(D), 400(E) are served by each pickup location 200(A)-200(E). Certainareas may be served by multiple pickup locations, such as the combinedgeographic range 400(AB) served by both of the pickup locations 200(A)and 200(B), the combined geographic range 400(BC) served by both of thepickup locations 200(B) and 200(C), the combined geographic range400(CD) served by both of the pickup locations 200(C) and 200(D) and thecombined geographic range 400(DE) served by both of the pickup locations200(D) and 200(E). When an order for one or more items is placed byuser, a shipment set may be assigned to a materials handling facilityfor fulfillment and delivery to the user. By strategically placingpickup locations 200, a user may select a pickup location, such aspickup location 200(A) that is in a geographically convenient location400(A) as the delivery destination, rather than having the orderdelivered to their house, apartment, office or other location. This maybe convenient to the user if they may not be available when the itemwould otherwise be delivered to the location, may not want otherslocated at alternative delivery locations to know that they have orderedan item (e.g., a mother may not want a gift for their child delivered tothe house) or may not want the item left at an unsecure location (e.g.,front porch, mailroom) if they are not present when the item isdelivered.

When a user places an order for one or more items, an order planningsystem may determine if there is a pickup location, such as pickuplocation 200(A), within a geographic range 400(A) of where the user maywish to have the items delivered. In some instances, a user maydesignate or preselect preferred pickup locations 200, such as pickuplocations 200(A), 200(B). For example, a user may designate one pickuplocation 200(A) as a preferred pickup location near the user's home anda second pickup location 200(B) as a pickup location near the user'swork. A user may also designate multiple pickup locations as beingacceptable for delivery in case one pickup location is full, such asdesignating either of pickup locations 200(A) or 200(B) as beingacceptable delivery locations near the user's home. If an identifiedpickup location is available, the order planning system may determine ifit is currently indicated that there will be available capacity toreceive the user's order prior to designating the pickup location fordelivery of an order. For items that have been ordered with a pickuplocation 200 designated as the delivery location, the materials handlingfacility may prepare and ship the orders to each of those pickuplocations, in some instances without requiring shipping packages forthose orders, as described in more detail above with respect to FIG. 1.For example, orders assigned to pickup location 200(A) may be pickeddirectly into one or more delivery containers, transported to the pickuplocation 200(A), placed in storage compartments of the pickup location200(A) and made available for retrieval by the users.

In various implementations, the pickup locations 200(A), 200(B), 200(C),200(D), 200(E) may communicate with one or more remote computingresources 410. The remote computing resources 410 may form a portion ofa network-accessible computing platform implemented as a computinginfrastructure of processors, storage, software, data access, and othercomponents that is maintained and accessible via a network 408. Thepickup locations 200(A), 200(B), 200(C), 200(D), 200(E) maycommunicatively couple to the remote computing resources 410 via thenetwork 408 which may represent wired technologies (e.g., wires, USB,fiber optic cable, etc.), wireless technologies (e.g., RF, cellular,satellite, Bluetooth, etc.), and/or other connection technologies. Thenetwork 408 carries data between the pickup locations and the remotecomputing resources 410. For example, the communications to and from thepickup locations may utilize the main access point 232 and/or thewireless antennas of the pickup locations, such as the wireless antennas241, 243, 231, 245, 247 described above with respect to FIG. 2.Communications may be to and from the command component of the controlstation for each of the pickup locations, such as the control station201, and may also be to and from the storage compartment managementcomponents of each connected storage compartment module, such as thestorage compartment modules 203, 205, 207, 209.

As illustrated, the remote computing resources 410 may include one ormore servers, such as servers 420(1), 420(2), . . . , 420(N). Theseservers 420(1)-(N) may be arranged in any number of ways, such as serverfarms, stacks, and the like that are commonly used in data centers.Furthermore, the servers 420(1)-(N) may include one or more processors422 and memory 424 which may store a storage compartment control system426.

The storage compartment control system 426 may be configured, forexample, to communicate with the pickup locations 200(A), 200(B),200(C), 200(D), 200(E). In various implementations, the generalactivities of the pickup locations, including the management of thestorage compartments and the related scheduling of deliveries andretrievals of items to and from the storage compartments, may becoordinated by the storage compartment control system 426. In variousimplementations, the storage compartment control system 426 and/or thecontrol station 201 of the pickup location may also determine when astorage compartment configuration is to be modified. For example, aswill be described in more detail below with respect to FIG. 6, dataregarding currently scheduled deliveries and retrievals of items to andfrom a pickup location may be evaluated, and based on the sizes of theitems a modification of the storage compartment configuration may bemade (e.g., to increase the corresponding storage density).

FIG. 5 is a flow diagram illustrating an example process 500 forprocessing a user order for an item. This process, and each processdescribed herein, may be implemented by the architectures describedherein or by other architectures. The process is illustrated as acollection of blocks in a logical flow graph. Some of the blocksrepresent operations that can be implemented in hardware, software, or acombination thereof. In the context of software, the blocks representcomputer-executable instructions stored on one or more computer readablemedia that, when executed by one or more processors, perform the recitedoperations. Generally, computer-executable instructions includeroutines, programs, objects, components, data structures, and the likethat perform particular functions or implement particular abstract datatypes.

The computer readable media may include non-transitory computer readablestorage media, which may include hard drives, floppy diskettes, opticaldisks, CD-ROMs, DVDs, read-only memories (ROMs), random access memories(RAMs), EPROMs, EEPROMs, flash memory, magnetic or optical cards,solid-state memory devices, or other types of storage media suitable forstoring electronic instructions. In addition, in some implementationsthe computer readable media may include a transitory computer readablesignal (in compressed or uncompressed form). Examples of computerreadable signals, whether modulated using a carrier or not, include, butare not limited to, signals that a computer system hosting or running acomputer program can be configured to access, including signalsdownloaded through the Internet or other networks. Finally, the order inwhich the operations are described is not intended to be construed as alimitation, and any number of the described operations can be combinedin any order and/or in parallel to implement the process.

The example process 500 begins with the receipt of a purchase requestinitiated by a user, as in 502. Upon receiving a purchase request for anitem from a user, a determination is made as to the estimated deliverytimeframe for that item, as in 504. In some examples, this may includeidentifying a materials handling facility with the requested item instock and estimating the time required to fulfill the item to the user.In other implementations, the estimated delivery timeframe may be a setday from the date of the purchase request or a series of days. Forexample, a user may specify that the delivery timeframe is to be one dayfrom the date of purchase request or between three and five days fromthe date of the purchase request. In still other implementations, theestimated delivery timeframe may be a set day of the week upon which theuser has requested to have items delivered. For example, a user maypreselect to have items ordered during the week delivered on Thursday ofevery week.

In addition to determining an estimated delivery timeframe, adetermination is made as to whether the user is interested in retrievingthe item from a pickup location, as in 506. Determining whether a useris interested in retrieving the item from a pickup location may be done,for example, by receiving an interaction from the user through a userinterface selecting to pick up the item or otherwise retrieve the itemfrom a pickup location. Alternatively, a user may preselect or provide apreference that they prefer to retrieve their items from pickuplocations.

If it is determined that the user is interested in retrieving the itemfrom a pickup location, one or more pickup locations are evaluated todetermine if they have capacity to receive the item based on currentand/or planned storage compartment configurations for the pickuplocations, as in 508. In various implementations, a user may select orhave previously designated one or more pickup locations to be evaluated,or the pickup locations may be evaluated based on being within apreferred area for the user. A preferred area may be, for example, ageographic area in which the user lives, works, or through which theuser frequently travels/commutes. Determining a preferred area may bedone by receiving information from the user as to their preferred areas,identifying preferred areas based on a user's past purchase and deliveryhistory, based on a user's known or estimated location, based on anaddress entered by the user, and the like.

The capacity of a pickup location to receive the item may be based atleast in part on the size of the item as compared to available storagecompartments in a current and/or planned storage compartmentconfiguration for the pickup location. As will be described in moredetail below, in various implementations, a storage compartmentconfiguration of a pickup location may be modified (e.g., to achieve ahigher storage density for the pickup location). For example, when alarger storage compartment is available at a pickup location, if only asmaller storage compartment is needed for storing an item, a partitionmay be inserted so as to divide the larger storage compartment intosmaller storage compartments. By utilizing the smaller storagecompartments to store smaller items, more items from more user ordersmay be designated for delivery to the pickup location and thecorresponding storage density may be increased. In variousimplementations, such modifications may be planned to occur at a latertime (e.g., at a particular time of day when such modifications arescheduled to occur, after a currently stored item has been retrievedfrom a storage compartment, etc.). In such instances, the capacity ofthe pickup location that is evaluated may be based on a planned storagecompartment configuration that is scheduled to be in effect at the timethe ordered item is scheduled to be delivered to the pickup location.

Once the pickup locations have been evaluated based on current and/orplanned storage compartment configurations, a determination is made asto whether any of the pickup locations will have capacity to receive theitem, as in 510. If it is determined that one or more of the pickuplocations will have capacity for receiving the item, the user isprovided with options for selecting a pickup location, as in 512. Invarious implementations, the options that are provided to the user mayinclude the different pickup locations that are available, as well asdifferent possible delivery and/or retrieval timeframes for theavailable pickup locations. After the pickup location options areoffered to the user, a determination is made as to whether the user hasselected a pickup location for delivery of the item, as in 514. If theuser has selected a pickup location for delivery of the item, theselected pickup location is associated with the item, as in 516.

If it is determined that the user is not interested in using a pickuplocation, as in 506, that no pickup locations have capacity to receivethe item, as in 510, or that the user has not selected one of theavailable pickup locations, as in 514, the example process provides theuser with other delivery options, as in 518. Other delivery options mayinclude allowing the user to select an alternative delivery timeframeand/or area, schedule an unattended delivery, and the like. If the userselects an alternative delivery timeframe and/or area (e.g., whereinduring a different delivery timeframe and/or in a different area one ormore pickup locations may have capacity for receiving the item) theexample process may return to decision block 506 and continue, otherwisethe example process completes.

FIG. 6 is a flow diagram illustrating an example process 600 fordetermining a storage compartment configuration in a pickup location.The example process begins with a receipt of data regarding currentlyscheduled deliveries and retrievals for a pickup location, as well asother information that is material to a determination of a storagecompartment configuration (e.g., the sizes of items to be stored, etc.),as in 602. Scheduled deliveries may include items that are currentlyin-transit, items that have been picked and/or packed but not yetdeparted from a materials handling facility, orders for items that havenot yet been picked and/or packed and/or any order for an item. Forexample, the system may receive data from carriers, manufacturers,materials handling facilities and/or distributors identifying when itemshave and/or will be shipped and/or estimated delivery times for itemsthat have been scheduled to be delivered to the pickup location. Thesystem may also receive data regarding retrievals from a pickuplocation, as well as other material information. For example, dataregarding an estimated time window for when a user will retrieve anitem, as well as hours of operation for the pickup location, holidays,etc., may all be received.

In various implementations, other material information may be related tothe sizes of the items, which may be utilized to determine sizes ofstorage compartments in which the items will be stored. In one example,data may be sent regarding the size of a shipping package which holds anitem, and for which a storage compartment may be designated that has asufficient size for holding the shipping package. Alternatively, datamay be received regarding the size of the item without the shippingpackage, in which case if the item is delivered in a shipping packageinstructions may be provided to a carrier or other delivery entity forremoving the item from the shipping package before it is placed in thestorage compartment at the pickup location. Alternatively the pickuplocation itself may include capabilities (e.g., robotic, etc.) forremoving an item from a shipping package before the item is placed in astorage compartment of the pickup location. As described above withrespect to FIG. 1, for items delivered directly from a materialshandling facility to a pickup location, the items may not need to bepacked in shipping packages.

Once data regarding the currently scheduled deliveries and retrievals ofitems for the pickup location has been received, an evaluation of thedata including the sizes of the items is performed to determine possiblealternative storage compartment configurations that may be utilized forstoring the items, as in 604. In various implementations, alternativestorage compartment configurations may be available through apositioning of partitions, etc. For example, with respect to FIG. 3, thedifferent storage compartment configurations 300A, 300B and 300C mayeach represent an alternative storage compartment configuration that iscapable of storing certain items (e.g., the small item 277A). As part ofthe evaluation of the data, one of the alternative storage compartmentconfigurations may be determined and/or selected for storing at leastsome of the items based on a sorting algorithm and/or a resultingstorage density. For example, as described above with respect to theexamples of FIG. 3, one of the storage compartment configurations may beselected based on a determination that the storage compartmentconfiguration is able to hold the most items and/or achieve a higherstorage density than the other alternative storage compartmentconfigurations.

Once an evaluation of the data including the sizes of the items isperformed to determine possible alternative storage compartmentconfigurations, a determination is made as to whether the storagecompartment configuration of the pickup location is to be modified, asin 606. For example, if the storage compartments are already in aconfiguration that has been determined and/or selected for storing theitems, the storage compartment configuration may not be modified. Asanother example, if a modification would only achieve a marginalimprovement (e.g., if an adjustment to a position of a partition wouldonly result in a small increase in the storage density), the cost of themodification (e.g., in terms of time, disruption, energy, etc.) may bedetermined to be too high relative to the marginal improvement, in whichcase the modification may not be made. If the storage compartmentconfiguration is not to be modified, the storage compartments are leftin the current configuration, as in 608. If the storage compartmentconfiguration is to be modified, a configuration modificationsub-process is performed, as in 700, as will be described in more detailbelow with respect to FIG. 7. Once the configuration modificationsub-process has been performed, the example process 600 completes, as in612.

In various implementations, the modification of a storage compartmentconfiguration may be performed during a particular time period. Forexample, the timing of the modifications may correspond to when the datais received (e.g., at the block 602), such as when the data isaccumulated from an ordering system and provided a certain number oftimes per day (e.g., three times per day). In various implementations,the timing for the modification may also or alternatively be based atleast in part on a timing for deliveries of items to and/or retrievalsof items from a pickup location (e.g., so that the modifications will becompleted before the items are delivered and/or after items areretrieved).

FIG. 7 is a flow diagram illustrating an example sub-process 700 formodifying a storage compartment configuration in a pickup location. Theexample sub-process begins with a determination as to whether one ormore partitions are to be inserted, as in 702. If one or more partitionsare to be inserted, the partitions are positioned at locations to dividelarger storage compartments into smaller storage compartments, as in704. In various implementations, partitions may be inserted by utilizinga partition positioning element of the pickup location, as described inmore detail above with respect to FIG. 3. Once the one or morepartitions have been inserted, as in 704, or if no partitions are to beinserted, as in 702, a determination is made as to whether anypartitions are to be removed, as in 706. In various implementations,partitions may be removed by reversing the process that is utilized forinserting partitions (e.g., utilizing the partition positioningelements) as described above with respect to FIG. 3. If partitions areto be removed, the partitions are removed from in between smallerstorage compartments so as to create larger storage compartments, as in708.

Once the partitions have been removed, as in 708, or if no partitionsare to be removed, as in 706, a determination is made as to whether anypartitions are to be moved to new locations, as in 710. As describedabove with respect to FIG. 3, existing partitions that are orientedhorizontally for separating storage compartments may be movedhorizontally to new locations, and similarly, vertically orientedpartitions may be moved vertically to new locations. If partitions areto be moved to new locations, the partitions are moved to modify therelative sizes of storage compartments that are separated by thepartitions, as in 712.

Once the partitions have been moved to new locations, as in 712, or ifno partitions are to be moved, as in 710, a determination is made as towhether any outer walls of the storage compartments are to be moved tonew locations, as in 714. If any outer storage compartment walls are tobe moved, the outer storage compartment walls are moved to new locationsso as to modify the sizes and/or numbers of the storage compartments, asin 716. In various implementations, one or more of the outer storagecompartment walls may be adjustable such that the overall volume that isoccupied by the storage compartments may be made larger or smaller(e.g., as described above with respect to the outer storage compartmentwall 209W1 of FIG. 3). With respect to the number of storage components,a movement of an outer storage compartment wall may be done inconjunction with the insertion or removal of partitions so as toincrease or decrease the total number of storage compartments that areavailable for storing items.

Once the outer storage compartment walls have been moved, as in 716, orif no outer storage compartment walls are to be moved, as in 714,modified door operations that correspond to the modified storagecompartment configuration are determined and stored, as in 718. Invarious implementations, the door operations may be determined accordingto the relative sizes of the storage compartments. For example, asdescribed above with respect to FIG. 3, fixed doors may be utilizedwherein one or more doors may be associated with a storage compartmentdepending on the size of the storage compartment. As another example,sliding doors may be utilized, wherein one or more sliding doors may beutilized to provide an opening of a size that corresponds to the size ofthe storage compartment.

FIG. 8 is a flow diagram illustrating an example process 800 fordelivering an item to a pickup location. In various implementations,items may be delivered to pickup locations by carriers, users, etc. Forexample, a carrier may deliver an item as part of a user order, a usermay deliver an item as part of a return of the item, etc. The exampleprocess 800 begins with the receipt of an access code and/orinstructions at a control station of the pickup location, as in 802. Anaccess code may include a unique identifier, such as a PIN that may beinput on a user interface of the control station and/or scanning of abarcode, QR code, etc. For example, an input may be received from acarrier or user that may include a tracking identification barcode,which may be scanned at the control station. As another example, anidentification code may be entered on the user interface of the controlstation. In an alternative implementation, rather than an identificationcode being provided at the control station, the control station mayreceive an identification code or other instructions from a remotecomputing resource. For example, a carrier or user may be instructed torespond to a text message or perform another action with their cellphone or other mobile device when they are at the pickup location inorder to have an identification code or other instructions sent from aremote computing resource to the control station.

Once the access code or other instructions are received, the door(s)associated with the storage compartment in the current storagecompartment configuration is/are unlocked and/or opened, so as to allowthe item to be placed in the storage compartment, as in 804. Asdiscussed previously, a storage compartment may be opened by the commandcomponent of the control station 201 issuing an open storage compartmentinstruction to the storage compartment management component of acorresponding storage compartment module 203, 205, 207, 209 identifyingthe storage compartment that is to be opened in the current storagecompartment configuration. The storage compartment management component,upon receipt of an open storage compartment instruction, may cause thelock(s) to disengage, thereby allowing and/or causing the door(s) thatare associated with the identified storage compartment to open. Invarious implementations, different types of doors may be utilized thatmay be opened utilizing different mechanisms. For example, as describedabove with respect to FIG. 3, fixed doors on hinges may be utilized thatswing open when unlocked. As another example, sliding doors may beutilized, which may be controlled to provide an opening that matches thesize of the storage compartment that is to be accessed.

Once the doors are unlocked and/or opened, a determination is made as towhether an input is received indicating that the size of the storagecompartment is too small or too large for the item, as in 806. Invarious implementations, various types of input may be received fordetermining that a storage compartment is too small or too large. Forexample, a carrier or user may provide feedback at the control station201 indicating that an attempt was made to place the item in the storagecompartment, but that the storage compartment was too small or toolarge. The feedback from the carrier or user may also specify whether itwas the height and/or width of the item that did not match with thestorage compartment. As another example, an image capture device orscanning device may be utilized for determining the size of an object,which may be compared to a size of a storage compartment to determine ifthe storage compartment is too small or too large for holding the item.

If it is determined that the storage compartment is too small or toolarge for the item, a determination is made as to whether the storagecompartment configuration is to be modified, as in 808. For example, ifanother storage compartment is available at the pickup location forstoring the item, a modification may not be required. As anotherexample, the item may be so large that no modification is possible thatwould enable the item to be stored at the pickup location, in which caseno modification may be attempted. If the storage compartmentconfiguration is not to be modified, alternative instructions areprovided regarding the item, as in 810. For example, a carrier or usermay be instructed to place the item in a different storage compartment,to take the item to an alternative pickup location, etc. If the storagecompartment configuration is to be modified, the configurationmodification sub-process is performed, as in 700, as described abovewith respect to FIG. 7.

Once the storage compartment configuration has been modified so as toprovide a storage compartment of sufficient size for storing the item,as in 700, or if the original size of the storage compartment or anotherstorage compartment was sufficient, as in 806, a confirmation is madethat the item has been placed in the storage compartment, as in 814. Forexample, the confirmation may include determining whether a closed-doornotification has been received, as indicating that the door of thestorage compartment has been closed after the item has been placed inthe storage compartment. In addition, if an image capture device 273within the storage compartment has been activated, video or imagescaptured by the image capture device 273 may be reviewed or analyzed toconfirm that the item has been placed in the storage compartment. Inaddition, or as an alternative thereto, a presence detection sensor 271and/or motion sensor 272 within the storage compartment may be queriedto confirm that the item has been placed in the storage compartment.Such confirmations may be desirable before a user or carrier is sent anotification that an item is available for retrieval.

Once a confirmation has been made that the item has been placed in thestorage compartment, the control station of the pickup location and/orthe user or carrier sends a confirmation of the delivery of the item, asin 816. The confirmation of the delivery may also include additionalinformation such as the date and time of the delivery. In oneimplementation, the control station may send the delivery confirmationto a remote computing resource, which may then send a message to a useror carrier that the item has been delivered to the pickup location andis available for retrieval. In an alternative implementation, thedelivery confirmation may be sent from the control station directly tothe user or carrier. For example, the control station may send anelectronic message, such as a text or email, which indicates that theitem has been delivered to the pickup location and will be available forretrieval when the user or carrier reaches the pickup location.

In various implementations, a configuration modification sub-process 700may alternatively be performed after the confirmation is made that theitem has been placed in the storage compartment. For example, adetermination may be made that the item is small enough such that asmaller storage compartment could be utilized for storing the item. Invarious implementations, the storage compartment configuration may bemodified while the item is in the storage compartment, or may bemodified while the item is temporarily removed from the storagecompartment. For example, a robotic arm or other mechanism of the pickuplocation may be utilized for removing the item (e.g., from the back ofthe storage compartment) while the storage compartment configuration ismodified. In another implementation, sensors within a storagecompartment or other mechanisms may be utilized to determine a size andplacement of the item within the storage compartment (e.g., as restingon the bottom of the storage compartment) for which a partition may beinserted (e.g., above the item) for dividing the storage compartmentinto smaller storage compartments. By allowing modifications to be madeto the storage compartment configuration after items have been placed inthe storage compartments, additional storage compartments and/or spacewithin adjacent storage compartments may be made available for storingadditional items that are to be delivered to the pickup location.

FIG. 9 is a flow diagram illustrating an example process 900 for aretrieval of an item from a pickup location. In various implementations,items may be retrieved from pickup locations by users, carriers, etc.For example, a user may retrieve an item as a part of a user order, acarrier may retrieve an item as part of a return of the item or asubsequent or final delivery of the item, etc. The example process 900begins with the receipt of an access code and/or instructions at acontrol station of the pickup location, as in 902. The access codeand/or instructions may be similar to those described above with respectto block 802 of FIG. 8, and may have been provided to a user or carrieras part of a message indicating that the item is available to beretrieved from the pickup location. Once the access code or otherinstructions are received, the door(s) associated with the storagecompartment of the current storage compartment configuration is/areunlocked and/or opened, so as to allow the item to be retrieved from thestorage compartment, as in 904. The unlocking and/or opening of thedoor(s) may be similar to the procedures described above with respect toblock 804 of FIG. 8.

Once the item has been retrieved, a confirmation is made that the itemhas been removed from the storage compartment, as in 906. For example,the confirmation may include determining whether a closed-doornotification has been received, as indicating that the door of thestorage compartment has been closed after the item has been retrieved.In addition, if an image capture device 273 within the storagecompartment has been activated, video or images captured by the imagecapture device 273 may be reviewed or analyzed to confirm that the itemhas been removed from the storage compartment. In addition, or as analternative thereto, a presence detection sensor 271 and/or motionsensor 272 within the storage compartment may be queried to confirm thatthe item has been removed from the storage compartment.

Once a confirmation has been made that the item has been removed fromthe storage compartment, the control station of the pickup locationsends a confirmation of the retrieval to a remote computing resource, asin 908. The confirmation of the retrieval may also include additionalinformation such as the date and time of the retrieval. In variousimplementations, a message may be sent to a user confirming theretrieval, as a safety measure. For example, the retrieval confirmationmessage may be sent to ensure that it was a user or a user's authorizedagent and not another party that retrieved the item from the storagecompartment.

Once a confirmation of the retrieval has been sent, a determination ismade as to whether the storage compartment configuration is to bemodified, as in 910. For example, once an item has been retrieved from astorage compartment, it may be desirable to insert one or morepartitions for dividing the storage compartment into smaller storagecompartments (e.g., so that additional smaller items that are in transitto the pickup location may be stored in the smaller storagecompartments), or remove one or more partitions for combining thestorage compartment with other storage compartments into larger storagecompartments (e.g., so that additional larger items that are in transitto the pickup location may be stored in the larger storagecompartments). If the storage compartment configuration is not to bemodified, the storage compartments are left in the currentconfiguration, as in 912. If the storage compartment configuration is tobe modified, the configuration modification sub-process is performed, asin 700, as described above with respect to FIG. 7. Once configurationmodification sub-process has been performed, the example process 900completes, as in 916.

FIG. 10 is a block diagram illustrating an example computer system 1000configured to implement one or more of the systems or processesdescribed herein. In various examples, the block diagram may beillustrative of one or more aspects of the control station 201 (FIG. 2),the remote computing resource(s) 410 (FIG. 4), and/or other relatedcomputing systems. In the illustrated implementation, the computersystem 1000 includes one or more processors 1010A, 1010B through 1010N,coupled to a non-transitory computer readable storage medium 1020 via aninput/output (I/O) interface 1030. The computer system 1000 furtherincludes a network interface 1040 coupled to an I/O interface 1030, andone or more input/output devices 1050. In some implementations, it iscontemplated that components of a storage compartment control systemand/or a pickup location (e.g., user interface, command component,storage compartment management component, control station) may beimplemented using a single instance of the computer system 1000, whilein other implementations, multiple such systems or multiple nodes makingup the computer system 1000 may be configured to host differentportions, components or instances of a storage compartment controlsystem and/or pickup location. For example, in one implementation, somedata sources or services (e.g., computing available space within astorage compartment, determining available storage capacity at thepickup location, determining a modification of a storage compartmentconfiguration) may be implemented via one or more nodes of the computersystem 1000 that are distinct from those nodes implementing other datasources or services (e.g., providing commands to open a storagecompartment, managing available storage capacity at the pickup location,providing commands for positioning partitions to modify a storagecompartment configuration). In some implementations, a given node mayimplement the functionality of more than one component of a storagecompartment control system and/or a pickup location.

In various implementations, the computer system 1000 may be auniprocessor system including one processor 1010A, or a multiprocessorsystem including several processors 1010A-1010N (e.g., two, four, eight,or another suitable number). The processors 1010A-1010N may be anysuitable processor capable of executing instructions. For example, invarious implementations the processors 1010A-1010N may begeneral-purpose or embedded processors implementing any of a variety ofinstruction set architectures (ISAs), such as the x86, PowerPC, SPARC,or MIPS ISAs, or any other suitable ISA. In multiprocessor systems, eachof the processors 1010A-1010N may commonly, but not necessarily,implement the same ISA.

The non-transitory computer readable storage medium 1020 may beconfigured to store executable instructions and/or data accessible bythe one or more processors 1010A-1010N. In various implementations, thenon-transitory computer readable storage medium 1020 may be implementedusing any suitable memory technology, such as static random accessmemory (SRAM), synchronous dynamic RAM (SDRAM), nonvolatile/Flash-typememory, or any other type of memory. In the illustrated implementation,program instructions and data implementing desired functions, such asthose described above, are shown stored within the non-transitorycomputer readable storage medium 1020 as program instructions 1025 anddata storage 1035, respectively. In other implementations, programinstructions and/or data may be received, sent or stored upon differenttypes of computer-accessible media, such as non-transitory media, or onsimilar media separate from the non-transitory computer readable storagemedium 1020 or the computer system 1000. Generally speaking, anon-transitory, computer readable storage medium may include storagemedia or memory media such as magnetic or optical media, e.g., disk orCD/DVD-ROM coupled to the computer system 1000 via the I/O interface1030. Program instructions and data stored via a non-transitory computerreadable medium may be transmitted by transmission media or signals suchas electrical, electromagnetic, or digital signals, which may beconveyed via a communication medium such as a network and/or a wirelesslink, such as may be implemented via the network interface 1040.

In one implementation, the I/O interface 1030 may be configured tocoordinate I/O traffic between the processors 1010A-1010N, thenon-transitory computer readable storage medium 1020, and any peripheraldevices in the device, such as the computer systems of the storagecompartment modules, the network interface 1040 or other peripheralinterfaces, such as input/output devices 1050. In some implementations,the I/O interface 1030 may perform any necessary protocol, timing orother data transformations to convert data signals from one component(e.g., non-transitory computer readable storage medium 1020) into aformat suitable for use by another component (e.g., processors1010A-1010N). In some implementations, the I/O interface 1030 mayinclude support for devices attached through various types of peripheralbuses, such as a variant of the Peripheral Component Interconnect (PCI)bus standard or the Universal Serial Bus (USB) standard, for example. Insome implementations, the function of the I/O interface 1030 may besplit into two or more separate components, such as a north bridge and asouth bridge, for example. Also, in some implementations, some or all ofthe functionality of the I/O interface 1030, such as an interface to thenon-transitory computer readable storage medium 1020, may beincorporated directly into the processors 1010A-1010N.

The network interface 1040 may be configured to allow data to beexchanged between the computer system 1000 and other devices attached toa network, such as other computer systems, or between nodes of thecomputer system 1000. For example, the network interface 1040 mayutilize the wireless antennas 241, 243, 231, 245, 247 to allowinteraction and interface between the storage compartment control system426 and the command component of the control station 201 and the storagecompartment management component of each connected storage compartmentmodule 203, 205, 207, 209. In various implementations, the networkinterface 1040 may support communication via wired or wireless generaldata networks, such as any suitable type of Ethernet network. Forexample, the network interface 1040 may support communication viatelecommunications/telephony networks such as analog voice networks ordigital fiber communications networks, via storage area networks such asFibre Channel SANs, or via any other suitable type of network and/orprotocol.

Input/output devices 1050 may, in some implementations, include one ormore display terminals, keyboards, keypads, touchpads, scanning devices,voice or optical recognition devices, or any other devices suitable forentering or retrieving data by one or more computer systems 1000.Multiple input/output devices 1050, such as a user interface for thestorage compartment control system 426 and/or the user interface 211,may be present in the computer system 1000 or may be distributed onvarious nodes of the computer system 1000. In some implementations,similar input/output devices may be separate from the computer system1000 and may interact with one or more nodes of the computer system 1000through a wired or wireless connection, such as over the networkinterface 1040. For example, the computer systems of the storagecompartment modules 203, 205, 207, 209 and/or the locking mechanisms ofthose storage compartment modules may communicate with the computersystem 1000 as input/output devices 1050 over wired or wireless networkinterface 1040.

As shown in FIG. 10, the memory 1020 may include program instructions1025 which may be configured to implement a storage compartment controlsystem and/or pickup location data storage 1035, which may comprisevarious tables, databases and/or other data structures accessible by theprogram instructions 1025. In one implementation, the programinstructions 1025 may include various software modules configured toimplement a user interface 211, security, locking and unlocking ofstorage compartments, management of the pickup location, and functionsof the storage compartment control system 426, such as scheduling thedelivery and retrieval of items, managing the available storage capacityof the pickup location and positioning partitions to modify a storagecompartment configuration. The data storage 1035 may include variousdata stores for maintaining one or more storage compartmentconfigurations, data representing presence or absence of items containedin various storage compartments, access information for various storagecompartments and/or other item parameter values. The data storage 1035may also include one or more data stores for maintaining datarepresenting available storage capacity, item deliveries, retrievals,returns, hold orders, partial orders, transfer container locations, andother information utilized by the storage compartment control systemand/or pickup location.

In various implementations, the parameter values and other dataillustrated herein as being included in one or more data stores may becombined with other information not described or may be partitioneddifferently into more, fewer, or different data structures. In someimplementations, data stores used in the storage compartment controlsystem and/or in a pickup location and/or in components or portionsthereof, may be physically located in one memory or may be distributedamong two or more memories. These memories may be part of a singlecomputer system or they may be distributed among two or more computersystems, such as two computer systems connected by a wired or wirelesslocal area network, or through the Internet, in differentimplementations. Similarly, in other implementations, different softwaremodules and data stores may make up a pickup location system and/or anyof the various components thereof described herein.

Those skilled in the art will appreciate that the computing system 1000is merely illustrative and is not intended to limit the scope of thepresent disclosure. In particular, the computing system and devices mayinclude any combination of hardware or software that can perform theindicated functions, including computers, network devices, internetappliances, PDAs, wireless phones, pagers, etc. The computing system1000 may also be connected to other devices that are not illustrated, orinstead may operate as a stand-alone system. In addition, thefunctionality provided by the illustrated components may in someimplementations be combined in fewer components or distributed inadditional components. Similarly, in some implementations thefunctionality of some of the illustrated components may not be providedand/or other additional functionality may be available.

Those skilled in the art will also appreciate that, while various itemsare illustrated as being stored in memory or storage while being used,these items or portions of them may be transferred between memory andother storage devices for purposes of memory management and dataintegrity. Alternatively, in other implementations, some or all of thesoftware components may execute in memory on another device andcommunicate with the illustrated computing system via inter-computercommunication. Some or all of the system components or data structuresmay also be stored (e.g., as instructions or structured data) on anon-transitory, computer-accessible medium or a portable article to beread by an appropriate drive, various examples of which are describedabove. In some implementations, instructions stored on acomputer-accessible medium separate from computer system 1000 may betransmitted to computer system 1000 via transmission media or signalssuch as electrical, electromagnetic, or digital signals, conveyed via acommunication medium such as a network and/or a wireless link. Variousimplementations may further include receiving, sending or storinginstructions and/or data implemented in accordance with the foregoingdescription upon a computer-accessible medium. Accordingly, thetechniques described herein may be practiced with other computer systemconfigurations.

Those skilled in the art will appreciate that in some implementationsthe functionality provided by the processes and systems discussed abovemay be provided in alternative ways, such as being split among moresoftware modules or routines or consolidated into fewer modules orroutines. Similarly, in some implementations, illustrated processes andsystems may provide more or less functionality than is described, suchas when other illustrated processes instead lack or include suchfunctionality respectively, or when the amount of functionality that isprovided is altered. In addition, while various operations may beillustrated as being performed in a particular manner (e.g., in serialor in parallel) and/or in a particular order, those skilled in the artwill appreciate that in other implementations the operations may beperformed in other orders and in other manners. Those skilled in the artwill also appreciate that the data structures discussed above may bestructured in different manners, such as by having a single datastructure split into multiple data structures or by having multiple datastructures consolidated into a single data structure. Similarly, in someimplementations, illustrated data structures may store more or lessinformation than is described, such as when other illustrated datastructures instead lack or include such information respectively, orwhen the amount or types of information that is stored is altered. Thevarious methods and systems as illustrated in the figures and describedherein represent example implementations. The methods and systems may beimplemented in software, hardware, or a combination thereof in otherimplementations. Similarly, the order of any method may be changed andvarious elements may be added, reordered, combined, omitted, modified,etc., in other implementations.

From the foregoing, it will be appreciated that, although specificimplementations have been described herein for purposes of illustration,various modifications may be made without deviating from the spirit andscope of the appended claims and the elements recited therein. Inaddition, while certain aspects are presented below in certain claimforms, the inventors contemplate the various aspects in any availableclaim form. For example, while only some aspects may currently berecited as being embodied in a computer readable storage medium, otheraspects may likewise be so embodied. Various modifications and changesmay be made as would be obvious to a person skilled in the art havingthe benefit of this disclosure. It is intended to embrace all suchmodifications and changes and, accordingly, the above description is tobe regarded in an illustrative rather than a restrictive sense.

What is claimed is:
 1. A pickup location apparatus, comprising: aplurality of storage compartments in a first storage compartmentconfiguration; at least one partition; at least one partitionpositioning element that positions the at least one partition to modifythe first storage compartment configuration to produce a second storagecompartment configuration, wherein the at least one partition ispositioned by the at least one partition positioning element to divide afirst storage compartment of the first storage compartment configurationinto second and third storage compartments that are part of the secondstorage compartment configuration; a first door with a first hinge, thefirst door providing an opening of a first size that corresponds to asize of the first storage compartment, wherein the first door providesaccess to the first storage compartment in the first storage compartmentconfiguration; a second door with a second hinge that is different thanthe first hinge, the second door providing an opening of a second sizethat corresponds to a size of the second storage compartment, whereinthe second door provides access to the second storage compartment in thesecond storage compartment configuration; and a third door with a thirdhinge that is different than the first hinge, the third door providingan opening of a third size that corresponds to a size of the thirdstorage compartment, wherein the third door provides access to the thirdstorage compartment in the second storage compartment configuration;wherein the first door is located on a first side of the pickup locationapparatus and the second and third doors are located on a second side ofthe pickup location apparatus.
 2. The pickup location apparatus of claim1, wherein the first, second and third doors comprise first, second andthird locking mechanisms, respectively, and wherein the pickup locationapparatus further comprises a control station that is configured tocontrol the first, second and third locking mechanisms.
 3. The pickuplocation apparatus of claim 2, wherein the control station stores afirst door operation for opening the first door as associated with thefirst storage compartment configuration and stores second and third dooroperations for opening the second and third doors, respectively, asassociated with the second storage compartment configuration.
 4. Thepickup location apparatus of claim 1, wherein the first and second sidescorrespond to front and back sides of the pickup location apparatus. 5.The pickup location apparatus of claim 1, further comprising a controlstation that controls the at least one partition positioning element. 6.A system, comprising: a pickup location apparatus, comprising: a firststorage compartment; a partition that is configured to be positioned todivide the first storage compartment to form a second storagecompartment that is smaller than the first storage compartment; andfirst and second doors, wherein the first and second doors areseparately hinged and are hinged on opposite sides; and a computingsystem, comprising: one or more processors; and a memory coupled to theone or more processors and storing program instructions that whenexecuted by the one or more processors cause the one or more processorsto at least: store a first door operation for operating the first doorto provide a first opening of a first size to provide access to thefirst storage compartment; and store a second door operation foroperating the second door to provide a second opening of a second sizeto provide access to the second storage compartment.
 7. The system ofclaim 6, wherein the program instructions when executed by the one ormore processors further cause the one or more processors to control apartition positioning element to position the partition to divide thefirst storage compartment to form the second storage compartment basedat least in part on a size of an item that is to be stored in the secondstorage compartment.
 8. The system of claim 7, wherein the programinstructions when executed by the one or more processors further causethe one or more processors to utilize the second door operation foroperating the second door to provide access to the second storagecompartment in response to receiving at least one of an access code orinstructions for enabling a user to retrieve the item from the secondstorage compartment.
 9. The system of claim 6, further comprising firstand second locking mechanisms for locking the first and second doors,respectively, wherein the program instructions when executed by the oneor more processors further cause the one or more processors to: controlthe first locking mechanism to unlock the first door as part of thefirst door operation; and control the second locking mechanism to unlockthe second door as part of the second door operation.
 10. The system ofclaim 6, wherein the first door operation also includes operating thesecond door in addition to the first door to provide access to the firststorage compartment.
 11. A pickup location apparatus, comprising: afirst door providing an opening of a first size that corresponds to asize of a first storage compartment, wherein the first door isconfigured to provide access to the first storage compartment; apartition for dividing the first storage compartment to form at least asecond storage compartment that is smaller than the first storagecompartment; and a second door that is operated independently of thefirst door, wherein the second door is configured to provide access tothe second storage compartment when the partition is utilized to formthe second storage compartment; wherein the first and second doors aresliding doors and the first opening of the first size is providedbetween the first and second doors.
 12. The pickup location apparatus ofclaim 11, further comprising a partition positioning element that iscontrolled to position the partition to divide the first storagecompartment to form the second storage compartment.
 13. The pickuplocation apparatus of claim 11, further comprising a control stationthat controls the first and second doors.
 14. The pickup locationapparatus of claim 13, wherein the control station stores a first dooroperation for controlling the first and second doors to provide theopening of the first size that corresponds to the size of the firststorage compartment, and stores a second door operation for controllingthe first and second doors to provide an opening of a second size thatcorresponds to the size of the second storage compartment.
 15. Thepickup location apparatus of claim 13, further comprising at least onemotor or actuator, wherein at least one of the first or second doors isdriven by the at least one motor or actuator.
 16. The pickup locationapparatus of claim 13, wherein the size of the second storagecompartment is adjusted by moving the partition to a different positionwithin the first storage compartment, and after the size of the secondstorage compartment is adjusted, an amount of opening that is providedbetween the first and second sliding doors to provide access to thesecond storage compartment is adjusted by the control station to matchthe new size of the second storage compartment.
 17. A pickup locationapparatus, comprising: a first door providing an opening of a first sizethat corresponds to a size of a first storage compartment, wherein thefirst door is configured to provide access to the first storagecompartment; a partition for dividing the first storage compartment toform at least a second storage compartment that is smaller than thefirst storage compartment; and a second door that is operatedindependently of the first door, wherein the second door is configuredto provide access to the second storage compartment when the partitionis utilized to form the second storage compartment; wherein the firstdoor is located on a first side of the pickup location apparatus, andwherein the second door is located on a second side of the pickuplocation apparatus.
 18. The pickup location apparatus of claim 17,further comprising a control station that stores a door operation foroperating the second door when the partition is utilized to form thesecond storage compartment.
 19. The pickup location apparatus of claim18, further comprising a partition positioning element, wherein thecontrol station controls the partition positioning element to positionthe partition to divide the first storage compartment to form the secondstorage compartment.
 20. The pickup location apparatus of claim 18,further comprising first and second locking mechanisms for locking thefirst and second doors, respectively, wherein the control stationcontrols the first and second locking mechanisms.